﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Expect.Core
{
    /// <summary>
    /// Attribute to flag specification provider methods
    /// </summary>
    [AttributeUsage(AttributeTargets.Method)]
    public sealed class SpecificationProviderAttribute : Attribute
    {
        /// <summary>
        /// Name of specification
        /// </summary>
        public string Name { get; set; }

    }

    /// <summary>
    /// Attribute to flag specification provider methods
    /// </summary>
    [AttributeUsage(AttributeTargets.Method)]
    public sealed class SetupProviderAttribute : Attribute
    {
        /// <summary>
        /// Name of specification
        /// </summary>
        public string Name { get; set; }

    }

    /// <summary>
    /// Attribute to flag specification provider methods
    /// </summary>
    [AttributeUsage(AttributeTargets.Method)]
    public sealed class TeardownProviderAttribute : Attribute
    {
        /// <summary>
        /// Name of specification
        /// </summary>
        public string Name { get; set; }

    }
}
